
import java.util.*;
/**
 * �ַ���ƥ����
 * 
 */
import java.util.*;
class Sort{
	/**
	*ð������
	*@param a[] �β���������
	*@param size ���鳤��
	*@return null
	*/
	public void bubbleSort(int a[],int size){
		int temp=0;//��ʱ��ű���
		for(int i=0;i<size;i++){
			for(int j=0;j<size-i-1;j++){
				if(a[j]>a[j+1]){//ǰһ��Ԫ�ش󣬽���λ��
					temp=a[j];
					a[j]=a[j+1];
					a[j+1]=temp;
				}
			}
		}
		System.out.println("ð�����������飺");
		//��ӡ���
		for(int i=0;i<size;i++){
			System.out.print(" "+a[i]);
		}
		System.out.println();
	}
	/**
	*ѡ������
	*@param a[] �β���������
	*@param size ���鳤��
	*@return null
	*/
	public void selectSort(int a[],int size){
		int temp;//��ʱ��ű���
		for(int i=0;i<size;i++){
			int k=i;
			for(int j=size-1;j>i;j--){
				if(a[k]>a[j])
					k=j;
			}
			temp=a[i];
			a[i]=a[k];
			a[k]=temp;
		}
		System.out.println("ѡ�����������飺");
		//��ӡ���
		for(int i=0;i<size;i++){
			System.out.print(" "+a[i]);
		}
		System.out.println();
	}
	
	/**
	*��������
	*@param a[] �β���������
	*@param size ���鳤��
	*@return null
	*/
	public void insertSort(int a[],int size){
		int temp,j;//��ʱ��ű���
		for(int i=1;i<size;i++){
			temp=a[i];
			for(j=i;j>0&&temp<a[j-1];j--)
				a[j]=a[j-1];
			a[j]=temp;
		}
		System.out.println("�������������飺");
		//��ӡ���
		for(int i=0;i<size;i++){
			System.out.print(" "+a[i]);
		}
		System.out.println();
	}
	/**
	*��������
	*@param a[] �β���������
	*@param size ���鳤��
	*@return null
	*/
	public int[] quickSort(int a[],int start,int end){
		int array[]=new int[10];
		int temp;//��ʱ��ű���
		int i,j;
		i=start;
		j=end;
		int base=a[start];
		do{
			while((a[i]<base)&&i<end)
				i++;
			while((a[j]>base)&&j>start)
				j--;
			if(i<=j){
				temp=a[i];
				a[i]=a[j];
				a[j]=temp;
				i++;
				j--;
			}
		}while(i<=j);
		if(start<j){
			quickSort(a,start,j);
		}
		if(end>i){
			quickSort(a,i,end);
		}
		return array;
	}
	
}
/**
*������
*/
public class SortlTest{
	public static void main(String[] args){
		int a[]=new int[10];
		int n=10;
		System.out.println("����һ�����飺");
		//�Ӽ�������һ������
		Scanner s=new Scanner(System.in);
		for(int i=0;i<n;i++){
			a[i]=s.nextInt();
		}
		System.out.println("����ǰ�����飺");
		for(int i=0;i<n;i++){
			System.out.print(" "+a[i]);
		}
		System.out.println();
		//ð������
		Sort sort=new Sort();
		sort.bubbleSort(a,10);
		sort.selectSort(a,10);
		sort.insertSort(a,10);
		a=sort.quickSort(a,0,9);
		System.out.println("�������������飺");
		//��ӡ���
		for(i=0;i<end+1;i++){
			System.out.print(" "+a[i]);
		}
		System.out.println();
	}
}